package com.info.zhiduoduo.admin.model.formbean.company;

import com.info.zhiduoduo.common.validator.IntIn;

import java.math.BigDecimal;

import javax.validation.constraints.Max;
import javax.validation.constraints.Pattern;
import javax.validation.constraints.Positive;

import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.Accessors;

@Data
@AllArgsConstructor
@NoArgsConstructor
@Accessors(chain = true)
public class SetCompanyCrowdsourceFormBean {

	@Positive
	private int compid;

	@IntIn(value = {1,2})
	@ApiModelProperty("是否开启智众包模式 1:否 2：是")
	private int crowdsource;

	@Max(value = 1)
	@ApiModelProperty("项目服务费")
	private double projectServiceRate;

	@IntIn(value = {1,2})
	@ApiModelProperty("是否开启智众包阶梯费率 1:否 2：是")
	private int crowdsourceStepped;

	@Max(value = 1)
	@ApiModelProperty("月度3万以下税率")
	private double baseTaxRate;

	@Max(value = 1)
	@ApiModelProperty("月度3万-10万税率")
	private double lowTaxRate;

	@Max(value = 1)
	@ApiModelProperty("月度10万以上税率")
	private double highTaxRate;

	@Pattern(regexp = "^1\\d{10}", message = "请输入正确的手机号")
	@ApiModelProperty("交易审核人员手机号")
	private String verifyPhone;

	@IntIn(value = {1,2}, message = "请选择正确的智众包模式")
	@ApiModelProperty("1: 代付模式 2：承包模式")
	private Integer crowdsourceType;

	@IntIn(value = {1,2}, message = "请选择正确的发票类型")
	@ApiModelProperty("发票类型 1:普票 2:专票")
	private int invoiceType;

	@ApiModelProperty("开票范围")
	private String invoiceScope;

	@ApiModelProperty("众包城市id")
	private int crowdsourceCity;

	@ApiModelProperty("一级经济分类id")
	private Integer economyCategoryId;

//	@ApiModelProperty("支付方式 1:得仕九歌商户号代付 2:线下支付 3:企业商户号支付 4:平台线下代付 5:得仕武圣商户号代付  6:传化武圣商户号")
//	private int payType;

	@ApiModelProperty("运营主体")
	private int partyId;

	@ApiModelProperty("是否开通撮合业务 1:否 2:是")
	private Integer crowdsourceProjectMatch;

	@IntIn(value = {1,2}, message = "请选择是否开启保证金")
	@ApiModelProperty("是否开启保证金 1:否 2:是")
	private Integer depositFlag;

	@ApiModelProperty("保证金比例")
	private Double depositRate;

	@ApiModelProperty("保证金返回周期(1-6月)")
	private Integer returnPeriod;

	@ApiModelProperty("第二档月度金额")
	private BigDecimal secondaryMonthlyAmount;

	@ApiModelProperty("第二档保证金比例")
	private Double secondaryDepositRate;

	@ApiModelProperty("众包成本合伙人id")
	private Integer crowdsourcePartnerId;

	@IntIn(value = {0,1})
	@ApiModelProperty("是否开通智零工(0:关（默认），1:开启)")
	private Integer openOddJob;

	@ApiModelProperty("税源地ID")
	private Integer taxSourceId;
}
